package com.hzw.saas.api.user;

import java.util.List;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hzw.saas.api.user.bo.StaffBO;
import com.hzw.saas.common.config.util.PageParam;

/**
 * <p>
 *
 * </p>
 *
 * @author sonam
 * @since 2021/4/23 14:08
 */
public interface IStaffService {

    List<StaffBO> listByIds(List<String> ids);

    /**
     * 通用查询
     * @param staffBo
     * @return
     */
    List<StaffBO> query(StaffBO staffBo);

    /**
     * 查询1个
     * @param staffBo
     * @return
     */
    StaffBO queryOne(StaffBO staffBo);

    /**
     * 通过手机号模糊查询
     * @param phoneNo
     * @return
     */
    StaffBO queryByPhoneNo(String phoneNo);

    StaffBO getByEmail(String email);

    /**
     * 通用分页查询
     * @param pageParam
     * @param staffBo
     * @return
     */
    IPage<StaffBO> searchByPage(PageParam pageParam, StaffBO staffBo);

    /**
     * 获取
     * @param staffId
     * @return
     */
    StaffBO getById(String staffId);

    /**
     * 删除
     * @param staffIds
     */
    void deleteByIds(List<String> staffIds);

    /**
     * 更新
     * @param staffBo
     */
    void updateById(StaffBO staffBo);

    /**
     * 添加工作人员
     * @param staffBo
     * @return
     */
    StaffBO addStaff(StaffBO staffBo);

    /**
     * 模糊查询（xx%）
     * @param pageParam
     * @param staffBo
     * @return
     */
    IPage<StaffBO> likeSearchByPage(PageParam pageParam, StaffBO staffBo);

    /**
     * 获取默认销售信息
     * @return
     */
    StaffBO getDefaultStaffInfo();

}

